package hihocoder;
import java.util.Scanner;

public class vvvv {
	public static int getMinRoot(int rootVal,int min,int max) {
		if(rootVal<=max&&rootVal>=min){
			return rootVal;
		}else if (rootVal<max) {//往右边找
			return getMinRoot(rootVal+rootVal/2, min, max);
		}else {
			return getMinRoot(rootVal-rootVal/2, min, max);
		}
	}
	
	public static void main(String[] args) {
		int inputCount=3;
		Scanner scanner=new Scanner(System.in);
		int K=scanner.nextInt();
		int max=-1;
		int min=(int)Math.pow(2, K);
		for (int i = 0; i < inputCount; i++) {
			int tmp=scanner.nextInt();
			if(tmp>max){
				max=tmp;
			}
			if (tmp<min) {
				min=tmp;
			}
		}
		
		int rootVal=(int)Math.pow(2, K);
		while (!(rootVal<=max&&rootVal>=min)) {
			if(rootVal<max){
				rootVal=rootVal+rootVal/2;
			}else {
				rootVal=rootVal-rootVal/2;
			}
		}
		System.out.println(rootVal);
	}
}
